In a conventional encryption/decryption system, symmetric keys are transmitted by using RSA which is an asymmetric key system, and data is encrypted/decrypted by the symmetric keys thus transmitted. As known in the art, RSA generates a public key and a private key based on the number obtained by multiplying two large prime numbers (p, q), and encrypts data using the generated public key and private key.
In RSA, data is encrypted with a public key and transmitted over a shared communications network. In addition, the public key is disclosed and shared on the Internet. Accordingly, if a private key is found based on the public key, the encrypted data may be hacked. It is known, of course, that finding a private key based on a public key is a very difficult task. However, it is not mathematically impossible to discover a private key based on a public key. Moreover, it often happens that a private key is discovered in a mathematical way. Also, if a malicious attacker such as a hacker has calculated prime numbers (p, q) that can be obtained within an appropriate response time in a certain way, the private key can be discovered much easier.